package com.hyt.it.ogt.ykcj.domain.zs;

import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.TableName;
import com.hyt.core.base.BaseEntity;
import com.hyt.it.ogt.ykcj.common.annotation.zs.TemplateMapper;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.util.Date;

/**
 * 证书考生信息实体
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("zs_examinee_info")
@ApiModel(value = "证书考生信息实体", description = "证书考生信息实体")
public class ZsExamineeInfo extends BaseEntity {

    @ApiModelProperty(value = "ZsInfo表id")
    private String zsId;

    @ExcelProperty(value = "姓名", order = 0)
    @TemplateMapper(templateCode = "NAME")
    @ApiModelProperty(value = "考生姓名")
    private String examineeName;

    @ApiModelProperty(value = "考生性别，这里的是枚举数字")
    private String examineeSex;

    @TemplateMapper(templateCode = "HEAD_PHOTO")
    @ApiModelProperty(value = "考生照片")
    private String examineePhoto;

    @ApiModelProperty(value = "证件类型：0-身份证")
    private String identificationType;

    @ExcelProperty(value = "证件号码", order = 4)
    @TemplateMapper(templateCode = "ID_NO")
    @ApiModelProperty(value = "证件号码")
    private String identificationNo;

    @ExcelProperty(value = "准考证号", order = 2)
    @ApiModelProperty(value = "准考证号")
    private String admissionNo;

    @ApiModelProperty(value = "证书专业")
    private String certificateSubject;

    @ExcelProperty(value = "证书专业", order = 5)
    @TemplateMapper(templateCode = "OCCUPATION")
    @ApiModelProperty(value = "证书专业名称")
    private String certificateSubjectName;

    @ApiModelProperty(value = "证书类型")
    private String certificateType;

    @ApiModelProperty(value = "证书级别")
    private String certificateLevel;

    @ExcelProperty(value = "证书级别", order = 6)
    @TemplateMapper(templateCode = "LEVEL")
    @ApiModelProperty(value = "证书级别描述")
    private String certificateLevelDesc;

    @ExcelProperty(value = "证书编号", order = 7)
    @TemplateMapper(templateCode = "CERTIFICATE_NO")
    @ApiModelProperty(value = "证书编号")
    private String certificateSerialNumber;

    @ApiModelProperty(value = "考生证书图片存放地址")
    private String certificateImgUrl;

    @ApiModelProperty(value = "考生证书pdf存放地址")
    private String certificatePdfUrl;

    @ApiModelProperty(value = "证书无签章图片存放地址")
    private String noSignatureImgUrl;

    @ApiModelProperty(value = "证书无签章pdf存放地址")
    private String noSignaturePdfUrl;

    @ExcelProperty(value = "发证日期", order = 9)
    @TemplateMapper(templateCode = "ISSUE_DATE")
    @ApiModelProperty(value = "发证日期")
    private Date certificateIssueData;

    @ApiModelProperty(value = "证书有效期开始时间")
    private Date certificateValidityStart;

    @ApiModelProperty(value = "证书有效期结束时间")
    private Date certificateValidityEnd;

    @ApiModelProperty(value = "证书发放状态：1-已发放，2-未发放")
    private Integer certificateProvideStatus;


}
